package com.tiancheng.trade.settlement.model.payment;

import com.baomidou.mybatisplus.annotation.TableName;
import com.tiancheng.trade.settlement.enums.PaymentFlowDetailSettleStatusEnum;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDate;

/**
 * 支付流水明细
 *
 * @author kellen
 * @date 2021/3/26
 */
@TableName("flow_detail")
@Data
@NoArgsConstructor
public class PaymentFlowDetail {
    /**
     * 主键
     */
    private long id;
    /**
     * 支付流水号
     */
    private String flowId;
    /**
     * 支付单号
     */
    private String paymentId;
    /**
     * 子订单号
     */
    private String subOrderId;
    /**
     * 商户编号
     */
    private String merchantCode;
    /**
     * 商户名称
     */
    private String merchantName;
    /**
     * 商品编码
     */
    private String productCode;
    /**
     * 交易中台对应的产品id
     */
    private String productId;
    /**
     * 商品名称
     */
    private String productName;
    /**
     * 商品详情
     */
    private String productDetail;
    /**
     * 商品数量
     */
    private Integer productCount;
    /**
     * 子订单应收金额
     */
    private Integer orderAmount;
    /**
     * 子订单实收金额
     */
    private Integer amount;
    /**
     * 子订单流水号
     */
    private String subOrderFlowId;
    /**
     * 渠道应核销日期
     */
    private LocalDate expectSettleDate;
    /**
     * 清分异常标记：ING=清分中；ERROR=异常；SUCCESS=清分完成
     * @see PaymentFlowDetailSettleStatusEnum
     */
    private String settleStatus;
    /**
     * 清分异常说明
     */
    private String settleErrorDesc;
    /**
     * 企业用户号
     */
    private String enterpriseCode;
}
